package com.atguigu.tingshu.search.service;

import com.atguigu.tingshu.query.album.AlbumInfoQuery;
import com.atguigu.tingshu.query.search.AlbumIndexQuery;
import com.atguigu.tingshu.vo.search.AlbumSearchResponseVo;

import java.util.List;
import java.util.Map;

public interface SearchService {


    /**
     * @author gengjian
     * @date 2025/02/26 09:19:03
     * 专辑下架
     */
    void lowerAlbum(Long albumId);

    /**
     * @author gengjian
     * @date 2025/02/26 09:17:16
     * 专辑上架
     */
    void upperAlbum(Long albumId);

    /**
     * @author gengjian
     * @date 2025/02/26 11:05:20
     * 关键词或分类检索
     */
    AlbumSearchResponseVo search(AlbumIndexQuery albumIndexQuery);

    /**
     * @author gengjian
     * @date 2025/03/02 15:35:49
     * 根据一级分类id查频道列表数据
     */
    List<Map<String, Object>> channel(Long category1Id);

    /**
     * @author gengjian
     * @date 2025/03/01 09:48:26
     * 根据专辑id查询专辑详情
     */
    Map<String, Object> findAlbumDetail(Long albumId);


    /**
     * @author gengjian
     * @date 2025/03/03 15:34:09
     * 自动补全提词
     */
    List<String> completeSuggest(String keyword);
}
